<!doctype html>



  


<html class="theme-next pisces use-motion">
<head>
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-PBHRK7');</script>
<!-- End Google Tag Manager -->
  <meta charset="UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/>



<meta http-equiv="Cache-Control" content="no-transform" />
<meta http-equiv="Cache-Control" content="no-siteapp" />












  
  
  <link href="/lib/fancybox/source/jquery.fancybox.css?v=2.1.5" rel="stylesheet" type="text/css" />




  
  
  
  

  
    
    
  

  

  

  

  

  
    
    
    <link href="//fonts.googleapis.com/css?family=Lato:300,300italic,400,400italic,700,700italic&subset=latin,latin-ext" rel="stylesheet" type="text/css">
  






<link href="/lib/font-awesome/css/font-awesome.min.css?v=4.4.0" rel="stylesheet" type="text/css" />

<link href="/css/main.css?v=5.0.2" rel="stylesheet" type="text/css" />


  <meta name="keywords" content="语言," />








  <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico?v=5.0.2" />






<meta name="description" content="Lua 的语法比较简单，学习起来也比较省力，但功能却并不弱。在Lua中，一切都是变量，除了关键字。 一. 注释　　在Lua中，你可以使用单行注释和多行注释。　　单行注释中，连续两个减号&amp;quot;--&amp;quot;表示注释的开始，一直延续到行末为止。相当于javascript中的&amp;quot;//&amp;quot;。　　多行注释中，由&amp;quot;--[[&amp;quot;表示注释开始，并且一直延续到&amp;quot;]">
<meta name="keywords" content="语言">
<meta property="og:type" content="article">
<meta property="og:title" content="Lua 基本语言语法">
<meta property="og:url" content="http://wurh.github.io/2015/04/30/20150430/index.html">
<meta property="og:site_name" content="华Ing&#39;s blog">
<meta property="og:description" content="Lua 的语法比较简单，学习起来也比较省力，但功能却并不弱。在Lua中，一切都是变量，除了关键字。 一. 注释　　在Lua中，你可以使用单行注释和多行注释。　　单行注释中，连续两个减号&amp;quot;--&amp;quot;表示注释的开始，一直延续到行末为止。相当于javascript中的&amp;quot;//&amp;quot;。　　多行注释中，由&amp;quot;--[[&amp;quot;表示注释开始，并且一直延续到&amp;quot;]">
<meta property="og:locale" content="en">
<meta property="og:updated_time" content="2019-07-12T06:10:38.183Z">
<meta name="twitter:card" content="summary">
<meta name="twitter:title" content="Lua 基本语言语法">
<meta name="twitter:description" content="Lua 的语法比较简单，学习起来也比较省力，但功能却并不弱。在Lua中，一切都是变量，除了关键字。 一. 注释　　在Lua中，你可以使用单行注释和多行注释。　　单行注释中，连续两个减号&amp;quot;--&amp;quot;表示注释的开始，一直延续到行末为止。相当于javascript中的&amp;quot;//&amp;quot;。　　多行注释中，由&amp;quot;--[[&amp;quot;表示注释开始，并且一直延续到&amp;quot;]">



<script type="text/javascript" id="hexo.configuration">
  var NexT = window.NexT || {};
  var CONFIG = {
    scheme: 'Pisces',
    sidebar: {"position":"left","display":"post"},
    fancybox: true,
    motion: true,
    duoshuo: {
      userId: '0',
      author: 'Author'
    }
  };
</script>




  <link rel="canonical" href="http://wurh.github.io/2015/04/30/20150430/"/>


  <title> Lua 基本语言语法 | 华Ing's blog </title>
</head>

<body itemscope itemtype="//schema.org/WebPage" lang="en">
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-PBHRK7"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->

  










  
  
    
  

<script>
  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
  })(window,document,'script','https://www.google-analytics.com/analytics.js','ga');

  ga('create', 'UA-69412379-1', 'auto');
  ga('send', 'pageview');

</script>

  <script>
  var _hmt = _hmt || [];
  (function() {
    var hm = document.createElement("script");
    hm.src = "https://hm.baidu.com/hm.js?b3ddfb8655d8b77429e04c7a4d5bcbc1";
    var s = document.getElementsByTagName("script")[0];
    s.parentNode.insertBefore(hm, s);
  })();
  </script>


  <div class="container one-collumn sidebar-position-left page-post-detail ">
    <div class="headband"></div>

    <header id="header" class="header" itemscope itemtype="//schema.org/WPHeader">
      <div class="header-inner"><div class="site-meta ">
  

  <div class="custom-logo-site-title">
    <a href="/"  class="brand" rel="start">
      <span class="logo-line-before"><i></i></span>
      <span class="site-title">华Ing's blog</span>
      <span class="logo-line-after"><i></i></span>
    </a>
  </div>
  <p class="site-subtitle">harder and harder</p>
</div>

<div class="site-nav-toggle">
  <button>
    <span class="btn-bar"></span>
    <span class="btn-bar"></span>
    <span class="btn-bar"></span>
  </button>
</div>

<nav class="site-nav">
  

  
    <ul id="menu" class="menu">
      
        
        <li class="menu-item menu-item-home">
          <a href="/" rel="section">
            
            Home
          </a>
        </li>
      
        
        <li class="menu-item menu-item-categories">
          <a href="/categories" rel="section">
            
            Categories
          </a>
        </li>
      
        
        <li class="menu-item menu-item-archives">
          <a href="/archives" rel="section">
            
            Archives
          </a>
        </li>
      
        
        <li class="menu-item menu-item-tags">
          <a href="/tags" rel="section">
            
            Tags
          </a>
        </li>
      

      
    </ul>
  

  
</nav>

 </div>
    </header>

    <main id="main" class="main">
      <div class="main-inner">
        <div class="content-wrap">
          <div id="content" class="content">
            

  <div id="posts" class="posts-expand">
    

  
  

  
  
  

  <article class="post post-type-normal " itemscope itemtype="//schema.org/Article">

    
      <header class="post-header">

        
        
          <h1 class="post-title" itemprop="name headline">
            
            
              
                Lua 基本语言语法
              
            
          </h1>
        

        <div class="post-meta">
          <span class="post-time">
            <span class="post-meta-item-icon">
              <i class="fa fa-calendar-o"></i>
            </span>
            <span class="post-meta-item-text">Posted on</span>
            <time itemprop="dateCreated" datetime="2015-04-30T19:57:41+08:00" content="2015-04-30">
              2015-04-30
            </time>
          </span>

          
            <span class="post-category" >
              &nbsp; | &nbsp;
              <span class="post-meta-item-icon">
                <i class="fa fa-folder-o"></i>
              </span>
              <span class="post-meta-item-text">In</span>
              
                <span itemprop="about" itemscope itemtype="https://schema.org/Thing">
                  <a href="/categories/开发语言/" itemprop="url" rel="index">
                    <span itemprop="name">开发语言</span>
                  </a>
                </span>

                
                

              
            </span>
          

          
            
              <span class="post-comments-count">
                &nbsp; | &nbsp;
                <a href="/2015/04/30/20150430/#comments" itemprop="discussionUrl">
                  <span class="post-comments-count ds-thread-count" data-thread-key="2015/04/30/20150430/" itemprop="commentsCount"></span>
                </a>
              </span>
            
          

          

          
          

          
        </div>
      </header>
    


    <div class="post-body" itemprop="articleBody">

      
      

      
        <p><code>Lua 的语法比较简单，学习起来也比较省力，但功能却并不弱。在Lua中，一切都是变量，除了关键字。</code></p>
<h1 id="一-注释"><a href="#一-注释" class="headerlink" title="一. 注释"></a>一. 注释</h1><p>　　<code>在Lua中，你可以使用单行注释和多行注释。</code><br>　　<code>单行注释中，连续两个减号&quot;--&quot;表示注释的开始，一直延续到行末为止。相当于javascript中的&quot;//&quot;。</code><br>　　<code>多行注释中，由&quot;--[[&quot;表示注释开始，并且一直延续到&quot;]]&quot;为止。这种注释相当于javascript中的&quot;/*…*/&quot;。在注释当中，&quot;[[&quot;和&quot;]]&quot;是可以嵌套的。</code></p>
<h1 id="二-编程语法"><a href="#二-编程语法" class="headerlink" title="二 编程语法"></a>二 编程语法</h1><p>　　首先在Lua中，写一个这样的程序很简单：</p>
<pre><code><figure class="highlight python"><table><tr><td class="gutter"><pre><span class="line">1</span><br></pre></td><td class="code"><pre><span class="line">    　   print(<span class="string">"Hello world"</span>)</span><br></pre></td></tr></table></figure>
</code></pre><p>　　在Lua中，语句之间可以用分号”；”隔开，也可以用空白隔开。一般来说，如果多个语句写在同一行的话，建议总是用分号隔开。<br>　　Lua 有好几种程序控制语句，如：</p>
<p>　　条件控制：<code>if</code> 条件 <code>then … elseif</code> 条件 <code>then … else … end</code><br>　　While循环：<code>while</code> 条件 <code>do … end</code><br>　　Repeat循环：<code>repeat … until</code> 条件<br>　　For循环：<code>for</code> 变量 = 初值，终点值，步进 <code>do … end</code><br>　　For循环：<code>for</code> 变量1，变量2，… ，变量N in表或枚举函数 <code>do … end</code></p>
<p>　　注意一下，for的循环变量总是只作用于for的局部变量，你也可以省略步进值，这时候，for循环会使用1作为步进值。<br>　　你可以用<code>break</code>来中止一个循环。</p>
<p>　　．语句块<br>　　　　语句块在javascript中是用”{“和”}”括起来的，在Lua中，它是用do 和 end 括起来的。比如：<br>　　　　do print(“Hello”) end<br>　　　　你可以在 函数 中和 语句块 中定局部变量。</p>
<p>　　．赋值语句<br>　　　　赋值语句在Lua被强化了。它可以同时给多个变量赋值。<br>　　　　例如：<br>　　　　a,b,c,d=1,2,3,4<br>　　　　甚至是：<br>　　　　a,b=b,a – 多么方便的交换变量功能啊。<br>　　　　在默认情况下，变量总是认为是全局的。假如你要定义局部变量，则在第一次赋值的时候，需要用local说明。比如：<br>　　　　local a,b,c = 1,2,3 – a,b,c都是局部变量</p>
<p>　　．数值运算<br>　　　　和javascript一样，支持 +, -, *, /。但Lua还多了一个”^”。这表示指数乘方运算。比如2^3 结果为8, 2^4结果为16。<br>　　　　连接两个字符串，可以用”..”运处符。如：<br>　　　　“This a “ .. “string.” – 等于 “this a string”</p>
<p>　　．比较运算<br>　　　　&lt; &gt; &lt;= &gt;= == ~=<br>　　　　分别表示 小于，大于，不大于，不小于，相等，不相等<br>　　　　所有这些操作符总是返回true或false。<br>　　　　对于Table，Function和Userdata类型的数据，只有 == 和 ~=可以用。相等表示两个变量引用的是同一个数据。比如：<br>　　　　a={1,2}<br>　　　　b=a<br>　　　　print(a==b, a~=b) – true, false<br>　　　　a={1,2}<br>　　　　b={1,2}<br>　　　　print(a==b, a~=b) – false, true</p>
<p>　　．逻辑运算<br>　　　　and, or, not<br>　　　　其中，and 和 or 与javascript区别特别大。<br>　　　　在这里，请先记住，在Lua中，只有false和nil才计算为false，其它任何数据都计算为true，0也是true！<br>　　　　and 和 or的运算结果不是true和false，而是和它的两个操作数相关。<br>　　　　a and b：如果a为false，则返回a；否则返回b<br>　　　　a or b：如果 a 为true，则返回a；否则返回b</p>
<p>　　　　举几个例子：<br>　　　　 print(4 and 5) –&gt; 5<br>　　　　 print(nil and 13) –&gt; nil<br>　　　　 print(false and 13) –&gt; false<br>　　　　 print(4 or 5) –&gt; 4<br>　　　　 print(false or 5) –&gt; 5</p>
<p>　　　　在Lua中这是很有用的特性，也是比较令人混洧的特性。<br>　　　　我们可以模拟javascript中的语句：x = a? b : c，在Lua中，可以写成：x = a and b or c。<br>　　　　最有用的语句是： x = x or v，它相当于：if not x then x = v end 。</p>
<p>　　．运算符优先级，从高到低顺序如下：<br>　　　　^<br>　　　　not - （一元运算）<br>　　　　 * /<br>　　　　 + -<br>　　　　 ..（字符串连接）<br>　　　　 &lt; &gt; &lt;= &gt;= ~= ==<br>　　　　 and<br>　　　　 or</p>
<h1 id="三-关键字"><a href="#三-关键字" class="headerlink" title="三. 关键字"></a>三. 关键字</h1><p>　　关键字是不能做为变量的。Lua的关键字不多，就以下几个：<br>　　and break do else elseif<br>　　end false for function if<br>　　in local nil not or<br>　　repeat return then true until　while</p>
<h1 id="四-变量类型"><a href="#四-变量类型" class="headerlink" title="四. 变量类型"></a>四. 变量类型</h1><p>　　怎么确定一个变量是什么类型的呢？大家可以用type()函数来检查。Lua支持的类型有以下几种：</p>
<p>　　Nil 空值，所有没有使用过的变量，都是nil。nil既是值，又是类型。<br>　　Boolean 布尔值<br>　　Number 数值，在Lua里，数值相当于java的double<br>　　String 字符串，如果你愿意的话，字符串是可以包含’\0’字符的<br>　　Table 关系表类型，这个类型功能比较强大，我们在后面慢慢说。<br>　　Function 函数类型，不要怀疑，函数也是一种类型，也就是说，所有的函数，它本身就是一个变量。<br>　　Userdata 嗯，这个类型专门用来和Lua的宿主打交道的。宿主通常是用C和C++来编写的，在这种情况下，Userdata可以是宿主的任意数据类型，常用的有Struct和指针。<br>　　Thread　　 线程类型，在Lua中没有真正的线程。Lua中可以将一个函数分成几部份运行。如果感兴趣的话，可以去看看Lua的文档。</p>
<h1 id="五-变量的定义"><a href="#五-变量的定义" class="headerlink" title="五. 变量的定义"></a>五. 变量的定义</h1><p>　　所有的语言，都要用到变量。在Lua中，不管你在什么地方使用变量，都不需要声明，并且所有的这些变量总是全局变量，除非，你在前面加上”local”。<br>　　这一点要特别注意，因为你可能想在函数里使用局部变量，却忘了用local来说明。<br>　　至于变量名字，它是大小写相关的。也就是说，A和a是两个不同的变量。<br>　　定义一个变量的方法就是赋值。”＝”操作就是用来赋值的<br>　　我们一起来定义几种常用类型的变量吧。<br>　　A. Nil<br>　　　　正如前面所说的，没有使用过的变量的值，都是Nil。有时候我们也需要将一个变量清除，这时候，我们可以直接给变量赋以nil值。如：<br>　　　　var1=nil – 请注意 nil 一定要小写</p>
<p>　　B. Boolean<br>　　　　布尔值通常是用在进行条件判断的时候。布尔值有两种：true 和 false。在Lua中，只有false和nil才被计算为false，而所有任何其它类型的值，都是true。比如0，空串等等，都是true。不要被C语言的习惯所误导，0在Lua中的的确确是true。你也可以直接给一个变量赋以Boolean类型的值，如：<br>　　　　varboolean = true</p>
<p>　　C. Number<br>　　　　在Lua中，是没有整数类型的，也不需要。一般情况下，只要数值不是很大（比如不超过100,000,000,000,000），是不会产生舍入误差的。在很多CPU上，实数的运算并不比整数慢。<br>　　　　实数的表示方法，同C语言类似，如：<br>　　　　4 0.4 4.57e-3 0.3e12 5e+20</p>
<p>　　D. String<br>　　　　字符串，总是一种非常常用的高级类型。在Lua中，你可以非常方便的定义很长很长的字符串。<br>　　　　字符串在Lua中有几种方法来表示，最通用的方法，是用双引号或单引号来括起一个字符串的，如：<br>　　　　“This is a string.”<br>　　　　和C语言相同的，它支持一些转义字符，列表如下：<br>　　　　\a bell<br>　　　　\b back space<br>　　　　\f form feed<br>　　　　\n newline<br>　　　　\r carriage return<br>　　　　\t horizontal tab<br>　　　　\v vertical tab<br>　　　　\ backslash<br>　　　　\” double quote<br>　　　　\’ single quote<br>　　　　[ left square bracket<br>　　　　] right square bracket</p>
<p>　　　　由于这种字符串只能写在一行中，因此，不可避免的要用到转义字符。加入了转义字符的串，看起来实在是不敢恭维，比如：<br>　　　　“one line\nnext line\n\”in quotes\”, ‘in quotes’”<br>　　　　一大堆的”\”符号让人看起来很倒胃口。如果你与我有同感，那么，我们在Lua中，可以用另一种表示方法：用”[[“和”]]”将多行的字符串括起来，如：<br>　　　　page = [[<br>　　　　<html><br>　　　　　　<head><br>　　　　　　　　<title>An HTML Page</title><br>　　　　　　</head><br>　　　　　　<body><br>　　　　　　　　<a href="http://www.lua.org" target="_blank" rel="noopener">Lua</a><br>　　　　　　　　[[a text between double brackets]]<br>　　　　　　</body><br>　　　　</html><br>　　　　]]</p>
<p>　　　　值得注意的是，在这种字符串中，如果含有单独使用的”[[“或”]]”就仍然得用”[“或”]“来避免歧义。当然，这种情况是极少会发生的。</p>
<p>E. Table<br>　　　　关系表类型，这是一个很强大的类型。我们可以把这个类型看作是一个数组。只是C语言的数组，只能用正整数来作索引；在Lua中，你可以用任意类型来作数组的索引，除了nil。同样，在C语言中，数组的内容只允许一种类型；在Lua中，你也可以用任意类型的值来作数组的内容，除了nil。<br>　　　　Table的定义很简单，它的主要特征是用”{“和”}”来括起一系列数据元素的。比如：</p>
<p>　　　　T1 = {} – 定义一个空表<br>　　　　T1[1]=10 – 然后我们就可以象C语言一样来使用它了。<br>　　　　T1[“John”]={Age=27, Gender=”Male”}<br>　　　　这一句相当于：<br>　　　　T1[“John”]={} – 必须先定义成一个表，还记得未定义的变量是nil类型吗<br>　　　　T1[“John”][“Age”]=27<br>　　　　T1[“John”][“Gender”]=”Male”<br>　　　　当表的索引是字符串的时候，我们可以简写成：<br>　　　　T1.John={}<br>　　　　T1.John.Age=27<br>　　　　T1.John.Gender=”Male”<br>　　　　或<br>　　　　T1.John{Age=27, Gender=”Male”}<br>　　　　这是一个很强的特性。</p>
<p>　　　　在定义表的时候，我们可以把所有的数据内容一起写在”{“和”}”之间，这样子是非常方便，而且很好看。比如，前面的T1的定义，我们可以这么写：</p>
<p>　　　　T1=<br>　　　　{<br>　　　　　　10, – 相当于 [1] = 10<br>　　　　　　[100] = 40,<br>　　　　　　John= – 如果你原意，你还可以写成：[“John”] =<br>　　　　　　{<br>　　　　　　　　Age=27, – 如果你原意，你还可以写成：[“Age”] =27<br>　　　　　　　　Gender=Male – 如果你原意，你还可以写成：[“Gender”] =Male<br>　　　　　　},<br>　　　　　　20 – 相当于 [2] = 20<br>　　　　}</p>
<p>　　　　看起来很漂亮，不是吗？我们在写的时候，需要注意三点：<br>　　　　第一，所有元素之间，总是用逗号”，”隔开；<br>　　　　第二，所有索引值都需要用”[“和”]”括起来；如果是字符串，还可以去掉引号和中括号；<br>　　　　第三，如果不写索引，则索引就会被认为是数字，并按顺序自动从1往后编；</p>
<p>　　　　表类型的构造是如此的方便，以致于常常被人用来代替配置文件。是的，不用怀疑，它比ini文件要漂亮，并且强大的多。</p>
<p>　　F. Function<br>　　　　函数，在Lua中，函数的定义也很简单。典型的定义如下：<br>　　　　function add(a,b) – add 是函数名字，a和b是参数名字<br>　　　　 return a+b – return 用来返回函数的运行结果<br>　　　　end</p>
<p>　　　　请注意，return语言一定要写在end之前。假如你非要在中间放上一句return，那么请写成：do return end。<br>　　　　还记得前面说过，函数也是变量类型吗？上面的函数定义，其实相当于：<br>　　　　add = function (a,b) return a+b end<br>　　　　当你重新给add赋值时，它就不再表示这个函数了。你甚至可以赋给add任意数据，包括nil （这样，你就清除了add变量）。Function是不是很象C语言的函数指针呢？</p>
<p>　　　　和C语言一样，Lua的函数可以接受可变参数个数，它同样是用”…”来定义的，比如：<br>　　　　function sum (a,b,…)<br>　　　　如果想取得…所代表的参数，可以在函数中访问arg局部变量（表类型）得到。<br>　　　　如 sum(1,2,3,4)<br>　　　　则，在函数中，a = 1, b = 2, arg = {3, 4}<br>　　　　更可贵的是，它可以同时返回多个结果，比如：<br>　　　　function s()<br>　　　　　　return 1,2,3,4<br>　　　　end<br>　　　　a,b,c,d = s() – 此时，a = 1, b = 2, c = 3, d = 4<br>前面说过，表类型可以拥有任意类型的值，包括函数！因此，有一个很强大的特性是，拥有函数的表，哦，我想更恰当的应该说是对象吧。Lua可以使用面向对象编程了。不信？那我举例如下：</p>
<p>　　　　t =<br>　　　　{<br>　　　　 Age = 27<br>　　　　 add = function(self, n) self.Age = self.Age+n end<br>　　　　}<br>　　　　print(t.Age) – 27<br>　　　　t.add(t, 10)<br>　　　　print(t.Age) – 37</p>
<p>　　　　不过，t.add(t,10) 这一句实在是有点土对吧？没关系，在Lua中，你可以简写成：<br>　　　　t:add(10) – 相当于 t.add(t,10)</p>
<p>　　G. Userdata 和 Thread<br>　　　　这两个类型的话题，超出了本文的内容，就不打算细说了。</p>

      
    </div>

    <div>
      
        

      
    </div>

    <div>
      
        
  <div style="padding: 10px 0; margin: 20px auto; width: 90%; text-align: center;">
    <div>坚持原创技术分享，您的支持将鼓励我继续创作！</div>
    <button id="rewardButton" disable="enable" onclick="var qr = document.getElementById('QR'); if (qr.style.display === 'none') {qr.style.display='block';} else {qr.style.display='none'}">
      <span>赏</span>
    </button>
    <div id="QR" style="display: none;">
      
        <div id="wechat" style="display: inline-block">
          <img id="wechat_qr" src="https://wurh.github.io/images/others/weixinshou.png" alt="华Ing WeChat Pay"/>
          <p>微信打赏</p>
        </div>
      
      
        <div id="alipay" style="display: inline-block">
          <img id="alipay_qr" src="https://wurh.github.io/images/others/alifu.png" alt="华Ing Alipay"/>
          <p>支付宝打赏</p>
        </div>
      
    </div>
  </div>


      
    </div>

    <footer class="post-footer">
      
        <div class="post-tags">
          
            <a href="/tags/语言/" rel="tag">#语言</a>
          
        </div>
      

      
        <div class="post-nav">
          <div class="post-nav-next post-nav-item">
            
              <a href="/2015/04/28/20150428/" rel="next" title="Lua IDE 开发工具">
                <i class="fa fa-chevron-left"></i> Lua IDE 开发工具
              </a>
            
          </div>

          <div class="post-nav-prev post-nav-item">
            
              <a href="/2015/07/05/20150705/" rel="prev" title="国际笑话性能优化经验">
                国际笑话性能优化经验 <i class="fa fa-chevron-right"></i>
              </a>
            
          </div>
        </div>
      

      
      
    </footer>
  </article>



    <div class="post-spread">
      
        
<script>
  with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='//bdimg.share.baidu.com/static/api/js/share.js?cdnversion='+~(-new Date()/36e5)];
</script>

      
    </div>
  </div>


          </div>
          


          
  <div class="comments" id="comments">
    
      <div class="ds-thread" data-thread-key="2015/04/30/20150430/"
           data-title="Lua 基本语言语法" data-url="http://wurh.github.io/2015/04/30/20150430/">
      </div>
    
  </div>


        </div>
        
          
  
  <div class="sidebar-toggle">
    <div class="sidebar-toggle-line-wrap">
      <span class="sidebar-toggle-line sidebar-toggle-line-first"></span>
      <span class="sidebar-toggle-line sidebar-toggle-line-middle"></span>
      <span class="sidebar-toggle-line sidebar-toggle-line-last"></span>
    </div>
  </div>

  <aside id="sidebar" class="sidebar">
    <div class="sidebar-inner">

      

      
        <ul class="sidebar-nav motion-element">
          <li class="sidebar-nav-toc sidebar-nav-active" data-target="post-toc-wrap" >
            Table of Contents
          </li>
          <li class="sidebar-nav-overview" data-target="site-overview">
            Overview
          </li>
        </ul>
      

      <section class="site-overview sidebar-panel ">
        <div class="site-author motion-element" itemprop="author" itemscope itemtype="//schema.org/Person">
          <img class="site-author-image" itemprop="image"
               src="https://wurh.github.io/images/avatar/logo.jpg?123456"
               alt="华Ing" />
          <p class="site-author-name" itemprop="name">华Ing</p>
          <p class="site-description motion-element" itemprop="description">harder and harder</p>
        </div>
        <nav class="site-state motion-element">
          <div class="site-state-item site-state-posts">
            <a href="/archives">
              <span class="site-state-item-count">56</span>
              <span class="site-state-item-name">posts</span>
            </a>
          </div>

          
            <div class="site-state-item site-state-categories">
              <a href="/categories">
                <span class="site-state-item-count">11</span>
                <span class="site-state-item-name">categories</span>
              </a>
            </div>
          

          
            <div class="site-state-item site-state-tags">
              <a href="/tags">
                <span class="site-state-item-count">15</span>
                <span class="site-state-item-name">tags</span>
              </a>
            </div>
          

        </nav>

        

        <div class="links-of-author motion-element">
          
            
              <span class="links-of-author-item">
                <a href="https://github.com/wurh" target="_blank" title="GitHub">
                  
                    <i class="fa fa-fw fa-github"></i>
                  
                  GitHub
                </a>
              </span>
            
              <span class="links-of-author-item">
                <a href="http://weibo.com/1674582564/profile?topnav=1&wvr=6" target="_blank" title="微博">
                  
                    <i class="fa fa-fw fa-globe"></i>
                  
                  微博
                </a>
              </span>
            
              <span class="links-of-author-item">
                <a href="https://www.zhihu.com/people/wu-rong-hua-56" target="_blank" title="知乎">
                  
                    <i class="fa fa-fw fa-globe"></i>
                  
                  知乎
                </a>
              </span>
            
          
        </div>

        
        

        
        
          <div class="links-of-blogroll motion-element links-of-blogroll-inline">
            <div class="links-of-blogroll-title">
              <i class="fa  fa-fw fa-globe"></i>
              Links
            </div>
            <ul class="links-of-blogroll-list">
              
                <li class="links-of-blogroll-item">
                  <a href="http://fsiaonma.github.io/" title="sam博客" target="_blank">sam博客</a>
                </li>
              
                <li class="links-of-blogroll-item">
                  <a href="http://shenjoel.github.io/" title="joel博客" target="_blank">joel博客</a>
                </li>
              
                <li class="links-of-blogroll-item">
                  <a href="http://firewood1122.github.io" title="firewood博客" target="_blank">firewood博客</a>
                </li>
              
                <li class="links-of-blogroll-item">
                  <a href="http://reqianduan.com" title="热前端" target="_blank">热前端</a>
                </li>
              
                <li class="links-of-blogroll-item">
                  <a href="http://opentutorial.info/" title="黄超博客" target="_blank">黄超博客</a>
                </li>
              
            </ul>
          </div>
        

      </section>

      
        <section class="post-toc-wrap motion-element sidebar-panel sidebar-panel-active">
          <div class="post-toc">
            
              
            
            
              <div class="post-toc-content"><ol class="nav"><li class="nav-item nav-level-1"><a class="nav-link" href="#一-注释"><span class="nav-number">1.</span> <span class="nav-text">一. 注释</span></a></li><li class="nav-item nav-level-1"><a class="nav-link" href="#二-编程语法"><span class="nav-number">2.</span> <span class="nav-text">二 编程语法</span></a></li><li class="nav-item nav-level-1"><a class="nav-link" href="#三-关键字"><span class="nav-number">3.</span> <span class="nav-text">三. 关键字</span></a></li><li class="nav-item nav-level-1"><a class="nav-link" href="#四-变量类型"><span class="nav-number">4.</span> <span class="nav-text">四. 变量类型</span></a></li><li class="nav-item nav-level-1"><a class="nav-link" href="#五-变量的定义"><span class="nav-number">5.</span> <span class="nav-text">五. 变量的定义</span></a></li></ol></div>
            
          </div>
        </section>
      

    </div>
  </aside>


        
      </div>
    </main>

    <footer id="footer" class="footer">
      <div class="footer-inner">
        <div class="copyright" >
  
  &copy;  2013 - 
  <span itemprop="copyrightYear">2019</span>
  <span class="with-love">
    <i class="fa fa-heart"></i>
  </span>
  <span class="author" itemprop="copyrightHolder">华Ing</span>
</div>

<div class="powered-by">
  Powered by <a class="theme-link" href="https://hexo.io">Hexo</a>
</div>

<div class="theme-info">
  Theme -
  <a class="theme-link" href="https://github.com/iissnan/hexo-theme-next">
    NexT.Pisces
  </a>
</div>

        

        
      </div>
    </footer>

    <div class="back-to-top">
      <i class="fa fa-arrow-up"></i>
    </div>
  </div>

  

<script type="text/javascript">
  if (Object.prototype.toString.call(window.Promise) !== '[object Function]') {
    window.Promise = null;
  }
</script>









  



  
  <script type="text/javascript" src="/lib/jquery/index.js?v=2.1.3"></script>

  
  <script type="text/javascript" src="/lib/fastclick/lib/fastclick.min.js?v=1.0.6"></script>

  
  <script type="text/javascript" src="/lib/jquery_lazyload/jquery.lazyload.js?v=1.9.7"></script>

  
  <script type="text/javascript" src="/lib/velocity/velocity.min.js?v=1.2.1"></script>

  
  <script type="text/javascript" src="/lib/velocity/velocity.ui.min.js?v=1.2.1"></script>

  
  <script type="text/javascript" src="/lib/fancybox/source/jquery.fancybox.pack.js?v=2.1.5"></script>


  


  <script type="text/javascript" src="/js/src/utils.js?v=5.0.2"></script>

  <script type="text/javascript" src="/js/src/motion.js?v=5.0.2"></script>



  
  


  <script type="text/javascript" src="/js/src/affix.js?v=5.0.2"></script>

  <script type="text/javascript" src="/js/src/schemes/pisces.js?v=5.0.2"></script>



  
  <script type="text/javascript" src="/js/src/scrollspy.js?v=5.0.2"></script>
<script type="text/javascript" src="/js/src/post-details.js?v=5.0.2"></script>



  


  <script type="text/javascript" src="/js/src/bootstrap.js?v=5.0.2"></script>



  

  
    
  

  <script type="text/javascript">
    var duoshuoQuery = {short_name:"wurh"};
    (function() {
      var ds = document.createElement('script');
      ds.type = 'text/javascript';ds.async = true;
      ds.id = 'duoshuo-script';
      ds.src = (document.location.protocol == 'https:' ? 'https:' : 'http:') + '//static.duoshuo.com/embed.js';
      ds.charset = 'UTF-8';
      (document.getElementsByTagName('head')[0]
      || document.getElementsByTagName('body')[0]).appendChild(ds);
    })();
  </script>

  
    
    <script src="/lib/ua-parser-js/dist/ua-parser.min.js?v=0.7.9"></script>
    <script src="/js/src/hook-duoshuo.js"></script>
  






  
  

  

  

  

  


</body>
</html>
